maven scope属性值设置含义 |
您所在的位置:网站首页 › maven scope属性 › maven scope属性值设置含义 |
1、枚举各个属性值的含义 compile,缺省值,适用于所有阶段,会打包进项目。 provided,类似compile,期望JDK、容器或使用者会提供这个依赖。 runtime,只在运行时使用,如JDBC驱动,适用运行和测试阶段。 test,只在测试时使用,用于编译和运行测试代码。不会随项目发布。 system,类似provided,需要显式提供包含依赖的jar,Maven不会在Repository中查找它。2、其它类型的属性值都比较容易理解,这里重点比较一下compile和runtime之间的区别: (1)先描述一个简单的例子:模块A依赖X,此时X的scope设置的值为runtime; (2)另一模块B依赖A,则B在编译时不会依赖X(编译时不会有任何问题); 如果原先X的scope设置为compile,则说明在编译的时B需要显示的调用X的相关类,在maven依赖中最常见的设置为runtime的依赖是JDBC,主要原因是由于jdbc中对驱动类的配置是采用反射的机制在配置文件中配置了class-name;
|
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |